// 代码块背景呼吸灯css特效
// 颜色
$light-color-1: rgba(0, 123, 255, 0.8);
$light-color-2: rgba(0, 255, 221, 0.8);

/* 样式 */
.vp-doc div[class*="language-"] {
    box-shadow: var(--vp-shadow-5);
    border-radius: 8px;
    border: 2px solid transparent;
    position: relative;
    z-index: 1;
    padding: 10px;
    margin: 10px 0;

    animation: glow-border 3s infinite linear;

    &.dark {
        animation: glow-border-dark 3s infinite linear;
    }
}

/* group样式 */
.vp-code-group {
    border-radius: 8px;
    border: 2px solid transparent;
    position: relative;
    z-index: 1;
    overflow-wrap: break-word;
    word-break: break-word;
    padding: 10px;
    margin: 10px 0;

    /* 样式 */
    div[class*="language-"] {
        box-shadow: none;
        border: none;
        position: static;
        z-index: auto;
        animation: none;
        padding: 0;
        margin: 0;
    }
}

/* 动画 */
@keyframes glow-border {
    0% {
        box-shadow: 0 0 10px 2px $light-color-1;
    }
    50% {
        box-shadow: 0 0 10px 2px $light-color-2;
    }
    100% {
        box-shadow: 0 0 10px 2px $light-color-1;
    }
}

// one 的原始代码
// /* Demo/docs-base/.vitepress/theme/style/vp-code.scss */

// /* 代码块：增加留空边距 增加阴影 */
// .vp-doc div[class*="language-"] {
//   box-shadow: 0 10px 30px 0 rgb(0 0 0 / 40%);
//   // padding-top: 20px;  /* 增加上内边距,会导致代码往下一行偏移 */
// }

// /* 代码块：添加macOS风格的小圆点 */
// .vp-doc div[class*="language-"]::before {
//   content: "";
//   display: block;
//   position: absolute;
//   top: 12px;
//   left: 12px;
//   width: 12px;
//   height: 12px;
//   background-color: #ff958f;
//   border-radius: 50%;
//   box-shadow:
//     20px 0 0 #2efff5,
//     40px 0 0 #7fd7ff;
//   z-index: 1;
// }

// /* 代码块：下移行号 隐藏右侧竖线 */
// .vp-doc .line-numbers-wrapper {
//   padding-top: 40px;
//   border-right: none;
// }

// /* 代码块：重建行号右侧竖线 */
// .vp-doc .line-numbers-wrapper::after {
//   content: "";
//   position: absolute;
//   top: 40px;
//   right: 0;
//   border-right: 1px solid var(--vp-code-block-divider-color);
//   height: calc(100% - 60px);
// }

// .vp-doc div[class*="language-"].line-numbers-mode {
//   margin-bottom: 20px;
// }
